home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 July / EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso / earkit / browser / ibrowsescripts / rexx / allmail.ibrx next >
Text File  |  1998-05-24  |  4KB  |  131 lines

  1. /*Read Yams mail whith IBrowse
  2. fixa så man kan välja bort requestern vid autoyam (ingen ibrowse startad)
  3. lägga in check att yam är igång, om inte starta
  4. kopiering av bilder till ram:t inget felmedelande om mailback.iff saknas
  5. kolla att allmail och new har olika filer?? eller kanske inte?
  6.  */
  7. OPTIONS RESULTS
  8.  
  9.  
  10. NL='0a'x        /* newline */
  11. NLNL='0a0a'x        /* 2 newlines  */
  12.  
  13. fileinc='<B><IMG SRC="mailfile.iff" ALT="File/s included!" > </B>'
  14. repl='<B><IMG SRC="mailrep.iff" ALT="Replyed!" > </B>'
  15. new='<B><IMG SRC="mailnew.iff" ALT="new" > </B>'
  16. fresh='<B><IMG SRC="mailfresh.iff" ALT="fresh" > </B>'
  17.  
  18. rubrik='<HTML><CENTER><B><FONT COLOR="#FF0000"><BIG>Here are your mail !</BIG></FONT></B></CENTER><PRE>'||NL
  19. /* <PRE><BIG> Here are your mail.</BIG>'||NL */
  20. IF ~SHOW('Ports','YAM') THEN DO
  21.   ADDRESS 'COMMAND'
  22.   'Run >NIL: YAM:YAM HIDE'
  23.   'SYS:RexxC/WaitForPort YAM'
  24. END
  25.  
  26. IF ~EXISTS('RAM:T/new.iff') THEN DO
  27.     ADDRESS 'COMMAND'
  28.     'copy IBrowse:Rexx/mailfile.iff ram:t/'
  29.     'copy IBrowse:Rexx/mailfresh.iff ram:t/'
  30.     'copy IBrowse:Rexx/mailrep.iff ram:t/'
  31.     'copy IBrowse:Rexx/mailnew.iff ram:t/'
  32.  
  33.     IF EXISTS('IBrowse:Rexx/mailback.iff') THEN 'copy IBrowse:Rexx/mailback.iff ram:t/ >NIL:'
  34. END
  35.  
  36. IF SHOW('Ports','IBROWSE') THEN DO
  37.     ADDRESS YAM
  38.     SetFolder 0
  39.  
  40.     GetFolderinfo MAX; max=RESULT
  41.     a=0
  42.     app=''
  43.     linkpage='<HEAD><TITLE>AllMail by Sören Forsberg</TITLE></HEAD><BODY><BODY BGCOLOR="#F0F0F0"><BODY BACKGROUND="mailback.iff"></BODY>'||rubrik
  44.     DO WHILE a<max
  45.         setmail a
  46.         getmailinfo STA
  47.         status=result
  48.         getmailinfo FRO
  49.         from=result
  50.         getmailinfo SUB
  51.         subject=result
  52.         subject=LEFT(subject,30)
  53.         getmailinfo FIL
  54.         file=result
  55.         namepos=pos('<',from)
  56.         name=LEFT(from,namepos-1)
  57.         name=LEFT(name,30)
  58.         lenfrom=LENGTH(from)
  59.         email=SUBSTR(from,namepos+1,lenfrom-namepos-1)
  60.         mailto='<A HREF="mailto:'||email||'">'||email||'</A>'||NL
  61.         titel='From: '||name||'Subject: '||subject
  62.     
  63.         open('inputfile',file,'R')
  64.         b=1
  65.         list=''
  66.         DO FOREVER
  67.             line=readln('inputfile')
  68.             appex=pos('application/octet-stream',line)
  69.             IF appex~=0 then BREAK
  70.             list=list||line||NL
  71.             IF EOF('inputfile') THEN BREAK
  72.  
  73.         END
  74.         close('inputfile')    
  75.         linkpage=linkpage||'<A HREF="file://localhost/RAM:T/newmail'||a||'.html">'||titel||'</A>'
  76.  
  77.         if status='N' then titel=titel||fresh
  78.         if status='N' then linkpage=linkpage||fresh
  79.         if status='R' then titel=titel||repl
  80.         if status='U' then titel=titel||new
  81.         if status='R' then linkpage=linkpage||repl
  82.         if status='U' then linkpage=linkpage||new
  83.         if appex~=0 then titel=titel||fileinc
  84.         if appex~=0 then linkpage=linkpage||fileinc
  85.         linkpage=linkpage||NL 
  86.  
  87.         len=length(list)
  88.         texttype='text/plain'
  89.           htmlpos=pos('text/html',list)
  90.         IF htmlpos~=0 THEN texttype='text/html'
  91.         textpos=pos(texttype,list)
  92.         IF textpos=0 THEN textpos=pos('X-UIDL:',list)
  93.         startpos=pos(NLNL,list,textpos)
  94.         out =substr(list,startpos,len-startpos)
  95.         endpos=pos('boundary=',list)
  96.         
  97.         if endpos~=0 THEN DO
  98.             outlen=LENGTH(out)
  99.             boundary=SUBSTR(list,endpos+10,24)
  100.             endpos=pos(boundary,out)
  101.             endpos=lastpos(NL,out,endpos)
  102.             out=LEFT(out,endpos)
  103.         END
  104.         open('outputfile','RAM:T/newmail'a'.html','W')
  105.         line=writeln('outputfile','<BODY><BODY BGCOLOR="#F0F0F0"></BODY><PRE>'||titel)
  106.         line=writeln('outputfile','Mail to: '||mailto)
  107.         IF htmlpos~=0 THEN line=writeln('outputfile','</PRE>')
  108.         line=writeln('outputfile',out)
  109.         IF htmlpos=0 THEN line=writeln('outputfile','</PRE>')
  110.  
  111.         close('outputfile')
  112.         a=a+1
  113.  
  114.     END
  115.  
  116.     linkpage=linkpage||'</PRE>'
  117.     open('outputfile','RAM:T/newmail.html','W')
  118.     line=writeln('outputfile',linkpage)
  119.     close('outputfile')
  120.     ADDRESS 'IBROWSE'
  121.     GOTOURL URL 'file://localhost/RAM:T/newmail.html'
  122. END
  123.  
  124. IF ~SHOW('Ports','IBROWSE') THEN DO
  125. /* lägga in en requester There is new mail for you!    OK!   */
  126.     ADDRESS 'YAM'
  127.     show
  128.     setfolder 0
  129. END
  130. exit
  131.